package ApplicationModels;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import org.joda.time.LocalDate;
import org.uqbar.commons.model.ObservableUtils;
import org.uqbar.commons.model.UserException;
import org.uqbar.commons.utils.Observable;

import Domain.Compromiso;
import Domain.Empleado;
import Domain.Tienda;

@SuppressWarnings("serial")
@Observable
public class CompromisosAppModel implements Serializable {

	private Compromiso compromisoSeleccionado;
	private Tienda tienda;

	// ////////////////////////////////////////////////ACTIONS///////////////////////////////////

	public void eliminarCompromiso() {
		// if (this.getCompromisoSeleccionado() != null) {
		this.getCompromisos().remove(this.getCompromisoSeleccionado());
		ObservableUtils.firePropertyChanged(this, "compromisos",
				this.getCompromisos());
		// } else {
		// throw new UserException("seleccionar un compromiso a eliminar");
		// }
	}

	// ////////////////////////////////////////////////ACCESORS///////////////////////////////////

	public void setTienda(Tienda t) {
		this.tienda = t;
	}

	public Tienda getTienda() {
		return this.tienda;
	}

	public List<Compromiso> getCompromisos() {
		return this.getTienda().getListaDeCompromisos();
	}

	public Compromiso getCompromisoSeleccionado() {
		return compromisoSeleccionado;
	}

	public void setCompromisoSeleccionado(Compromiso compromisoSeleccionado) {
		this.compromisoSeleccionado = compromisoSeleccionado;
	}

	public CompromisosAppModel(Tienda t) {

		super();
		this.setTienda(t);

	}

}
